home *** CD-ROM | disk | FTP | other *** search
/ MACD 5 / MACD 5.bin / workbench / libs / progargslib.lha / ProgArgs / Includes / clib / progargs_protos.h
C/C++ Source or Header  |  1995-04-08  |  3KB  |  80 lines

  1. #ifndef CLIB_PROGARGS_PROTOS_H
  2. #define CLIB_PROGARGS_PROTOS_H
  3.  
  4. #ifndef LIBRARIES_PROGARGS_H
  5. #include <libraries/progargs.h>
  6. #endif
  7.  
  8. // =====================================================
  9. // 2.x/3.x POOL FUNCTIONS
  10. // =====================================================
  11.  
  12. APTR PA_AllocPooled( APTR poolHeader, unsigned long memSize );
  13. APTR PA_CreatePool( unsigned long memFlags, unsigned long puddleSize,
  14.                     unsigned long threshSize );
  15. void PA_DeletePool( APTR poolHeader );
  16. void PA_FreePooled( APTR poolHeader, APTR memory, unsigned long memSize );
  17.  
  18. APTR PA_AllocVecPooled( APTR poolHeader, ULONG memSize );
  19. void PA_FreeVecPooled( APTR poolHeader, APTR memory );
  20.  
  21. // =====================================================
  22. // TAG ARGUMENT FUNCTIONS
  23. // =====================================================
  24.  
  25. void PA_FreeTagArgs( struct TagArgs* base );
  26. struct TagArgs* PA_AllocTagArgsA( struct TagItem* controlTags );
  27. struct TagArgs* PA_AllocTagArgs( Tag ctrl1Tag, ... );
  28.  
  29. BOOL PA_AddTagArgsA( struct TagArgs* base,struct TagItem* args );
  30. BOOL PA_AddTagArgs( struct TagArgs* base,Tag arg1Tag, ... );
  31.  
  32. BOOL PA_RemTagArgsA( struct TagArgs* base,struct TagItem* args );
  33. BOOL PA_RemTagArgs( struct TagArgs* base,Tag arg1Tag, ... );
  34.  
  35. // =====================================================
  36. // PROGRAM ARGUMENT FUNCTIONS
  37. // =====================================================
  38.  
  39. void FreeProgArgs( struct ProgArgs* progArgs );
  40. struct ProgArgs* AllocProgArgsA( struct ArgEntry* entries, struct TagItem* cmdTags );
  41. struct ProgArgs* AllocProgArgs( struct ArgEntry* entries, Tag cmd1Type, ... );
  42.  
  43. BOOL ExecProgArgsA( struct ProgArgs* progArgs, struct TagItem* cmdTags );
  44. BOOL ExecProgArgs( struct ProgArgs* progArgs, Tag cmd1Type, ... );
  45.  
  46. BOOL AddProgArgsA( struct ProgArgs* progArgs, struct TagItem* argTags );
  47. BOOL AddProgArgs( struct ProgArgs* progArgs, Tag arg1Type, ... );
  48. BOOL RemProgArgsA( struct ProgArgs* progArgs, struct TagItem* argTags );
  49. BOOL RemProgArgs( struct ProgArgs* progArgs, Tag arg1Type, ... );
  50. BOOL GetProgArgsA( struct ProgArgs* progArgs, struct TagItem* argTags );
  51. BOOL GetProgArgs( struct ProgArgs* progArgs, Tag arg1Type, ... );
  52.  
  53. struct ArgEntry* PA_GetArgEntry( struct ProgArgs* progArgs, Tag entryID );
  54. struct ArgEntry* PA_NextArgEntry( struct ProgArgs* progArgs, 
  55.                                   struct ArgEntry* curEntry );
  56.  
  57. #if 0
  58.  
  59. // =====================================================
  60. // PROGRAM ARGUMENT TRANSLATOR FUNCTIONS
  61. // =====================================================
  62.  
  63. struct ProgArgTrans* AllocProgArgTrans( struct Hook* MsgFunc,
  64.                                         struct TagItem* tagItems );
  65. struct ProgArgTrans* AllocProgArgTransA( struct Hook* MsgFunc,
  66.                                          Tag tag1Type, ... );
  67. void FreeProgArgTrans( struct ProgArgTrans* Translator );
  68.  
  69. BOOL PutProgArgsA( struct ProgArgs* Handle, struct ProgArgTrans* Translator,
  70.                    struct TagItem* UserTags );
  71. BOOL PutProgArgs( struct ProgArgs* Handle, struct ProgArgTrans* Translator,
  72.                   Tag usr1Type, ... );
  73. BOOL GetProgArgsA( struct ProgArgs* Handle, struct ProgArgTrans* Translator,
  74.                    struct TagItem* UserTags );
  75. BOOL GetProgArgs( struct ProgArgs* Handle, struct ProgArgTrans* Translator,
  76.                   Tag usr1Type, ... );
  77. #endif
  78.  
  79. #endif
  80.